#ifndef MY_RENDER_TRIANGLE
#define MY_RENDER_TRIANGLE

#include<vector>
#include"../dot.hpp"
#include"../vector4.hpp"
#include"../config.hpp"

using std::vector;

namespace object{
    // 这是最普通的一个三角形，空洞的。
    class Triangle{
        public:

        int Sampling=DefaultSampling;

        int index1;
        int index2;
        int index3;
        Triangle(int index1,int index2,int index3):index1(index1),index2(index2),index3(index3){}
    };

    // 彩色的三角形,但是只有一个颜色
    class ColorTriangle:public Triangle{
        public:
        float red;
        float green;
        float blue;
        ColorTriangle(int index1,int index2,int index3,float red,float green,float blue):Triangle(index1,index2,index3),red(red),green(green),blue(blue){}
    };

    // 一个彩色组件,用来继承，继承之后，就可以让物体拥有有颜色。
    class ColorTriangleComponent{
        public:
        vector<ColorTriangle> colorTriangles;
        ColorTriangleComponent(){}
        ColorTriangleComponent(const vector<ColorTriangle>& colorTriangles)
            : colorTriangles(colorTriangles) {}
    };

}






#endif